Tipedia

Write Stall

Last edited by longfangsong at 2021-05-10
Rocksdb

当上层写入 RocksDB 速度过快,RocksDB 就会对写入进行降速(stall)处理。 主要有以下几个 stall 的点:

  • Too many memtables 当 max_write_buffer_number 大于等于 3,需要 flush 的 memtable 数量已经大于等于 max_writer_buffer_number - 1 的时候,RocksDB 就会 stall 写入。

  • Too many level-0 SST files 当 level 0 的 SST file 的数量达到 level0_slowdown_writes_tigger 的时候,RocksDB 就会 stall 写入。

  • Too many pending compaction bytes 当预计的 compaction 数据的大小达到了 sofe_pending_compaction_bytes 之后,RocksDB 会 stall 写入。

Links